home *** CD-ROM | disk | FTP | other *** search
/ Mac Easy 2010 May / Mac Life Ubuntu.iso / casper / filesystem.squashfs / usr / share / doc / libgphoto2-2 / camlibs / README.adc65 < prev    next >
Encoding:
Text File  |  2009-01-07  |  2.8 KB  |  72 lines

  1. /* ADC-65(s) camera driver
  2.  * Released under the GPL version 2   
  3.  * 
  4.  * Copyright 2001
  5.  * Benjamin Moos
  6.  * <benjamin@psnw.com>
  7.  * http://www.psnw.com/~smokeserpent/code/
  8.  */
  9.  
  10.    This driver is for the serial version of the Achiever Digital Camera ADC-65.
  11. This camera is sold under various brand names, such as the "Easy Shot digit".
  12. These cameras take 15 photos at 256x256x24. They have an 8Mbit memory. They are
  13. very cheap, less than $30 at WalMart.
  14.  
  15.    The ADC-65 has a very simple syntax. The driver only sends one-byte
  16. commands.
  17.  
  18. Commands
  19. --------
  20.        0x30 : Ping the camera
  21. 0x00 - 0x15 : Get a picture
  22.  
  23. Responses
  24. ---------
  25. 0x15 0x30 0x00 : Ping response
  26. 0x15 [n] [data]: Picture response.
  27.                  n = number of photos in memory + 1
  28.                  data = 64k of data (format not determined yet)
  29.  
  30.     The windows software is extremely basic, and only uses these 17 command
  31. bytes. If any other commands are available, they will have to be found through
  32. experimentation.
  33.  
  34.     Note that there is a "picture zero" which always exists whether or not any
  35. actual photos have been snapped. This seems most likely to be calibration data
  36. for the CMOS sensor. I haven't incorporated this data in my driver yet for two
  37. reasons; 1) I haven't decided on a good way to retain this data between picture
  38. downloads, and downloading it for each picture is too wasteful 2) We're talking
  39. about really minor adjustments, compared to the resolution loss we already get
  40. from converting 256x256x8 R1G2B1 data to 256x256x24 RGB. 
  41.  
  42.     I have included the beginnings of some colorspace stuff in the colorspace.h
  43. and colorspace.c files. Right now all I'm using is the colorspaceRGB data
  44. structure, but will work on using this do some image enhancement in the future.
  45.     
  46.     The hardest part of this project was figuring out the image format and I
  47. was often led astray by typos and small logic errors while reprogramming that
  48. portion of the code again and again (and again) due to the number of possible
  49. pertubations. Two packages were very helpful, netpbm and the Gimp. By using
  50. rawtopgm (from netpbm) I was able to visually analyze the data. Much better
  51. than trying to understand hexdumps :) I am inspired to write some kind of tool
  52. to help with analyzing this sort of data, perhaps interactively testing
  53. different possible encoding schemes.
  54.  
  55.     I have based the skeleton of this driver on the "barbie" camera driver. I
  56. have also grabbed a lot of ideas from the dimera driver as well. So I am
  57. indebted to:
  58.     
  59.     The Barbie Team
  60.     ---------------
  61.     Scott Fritzinger <scottf@unr.edu>
  62.     Andreas Meyer <ahm@spies.com>
  63.     Pete Zaitcev <zaitcev@metabyte.com>
  64.     Jeff Laing <jeffl@SPATIALinfo.com>
  65.     
  66.     The Dimera3500 Team
  67.     -------------------
  68.     Brian Beattie http://www.beattie-home.net
  69.     Chuck Homic <chuck@vvisions.com>
  70.     Dan Fandrich <dan@coneharvesters.com>
  71.     Gregg Berg <gberg@covconn.net>
  72.